<?php
/**
 * Klasse zum Aufbau und Validierung von Formularen
 *
 * @author		Joachim Ruf
 * @copyright	Copyright (c) 2003-2013 Loresoft Software (http://www.loresoft.de)
 * @license		http://yapary.loresoft.de/lizenzbedingungen     New BSD License
 *
 * */


Class Yapary_Form_Formular_Template
{
	private $arrParam			= array();
	private $arrSelectParam		= array();
	private $arrRadioParam		= array();
	private $arrValidation		= array();

	private $error				= NULL;
	private $elementKind		= NULL;
	private $subject			= '';
	private $method				= 'post';
	private $required			= false;
	private $enableErrorReporting			= false;
	private $isValid			= false;


	/**
	 * @param string $_method	: post|get
	 * @param string $_desc		: Beschreibung
	 * */
	function __construct ($_element = '') {
		$this->setElement($_element);
		$this->elementKind = 'template';
	}


	/**
	 * Setzt die Beschreibung.
	 * @param string $_desc		: Beschreibung
	 * @return void
	 * */
	public function getElementKind () {
		return $this->elementKind;
	}


	/**
	 * Setzt die Beschreibung.
	 * @param string $_desc		: Beschreibung
	 * @return void
	 * */
	public function setRequired ($_required = true) {
		$this->required = $_required;
	}


	/**
	 * Liefert die Beschreibung zurueck.
	 * @return string
	 * */
	public function isRequired () {
		return $this->required;
	}


	/**
	 * Setzt die Beschreibung.
	 * @param string $_desc		: Beschreibung
	 * @return void
	 * */
	private function setElement ($_element) {
		$this->subject = $_element;
	}


	/**
	 * @desc Gibt an, ob das Formular bereits versendet wurde.
	 * @return bool
	 * */
	public function hasSend () {
		return true;
	}


	/**
	 * @desc Liefert alle entstandenen Fehler.
	 * @return array
	 * */
	public function getError () {
		return NULL;
	}


	/**
	 * @desc Liefert die Anzahl an internen und externen Fehlern.
	 * @return int
	 * */
	public function hasError () {
		return false;
	}


	/**
	 * @desc Gibt an, dass Fehlercodes aus der Validierung angezeigt werden sollen
	 * @return void
	 * */
	public function enableErrorReporting ($_enable = true) {
	}


	/**
	 * @desc Validiert alle Formulareingaben.
	 * @return int|NULL	: Validierung erfolgreich=true, sonst false
	 * */
	public function validate () {
		return true;
	}


	/**
	 * @desc Gibt das Formular aus.
	 * @return string
	 * */
	public function getElement() {
		return $this->subject;
	}


}


?>